﻿using System;
using System.Collections.Generic;
using MathNet.Numerics.LinearAlgebra.Double;
using MathNet.Numerics.LinearAlgebra.Generic;

namespace innovations.ml.core.models.theta
{
    /// <summary>
    /// Multi-class Multi-Level Theta
    /// </summary>
    public class MCMLTheta
    {        
        public MCMLTheta(int rowNumber, int columnNumber):this(rowNumber, columnNumber, 0.0){}
        public MCMLTheta(int rowNumber, int columnNumber, double thetaValues)
        {
            MatrixVectorList = new List<Matrix<double>>();
            MatrixVectorList.Add(new DenseMatrix(rowNumber, columnNumber, thetaValues));
        }

        public MCMLTheta(double[,] thetaValues)
        {
            MatrixVectorList = new List<Matrix<double>>();
            MatrixVectorList.Add(new DenseMatrix(thetaValues));
        }

        protected List<Matrix<double>> MatrixVectorList { get; set; }

    }
}
